約 5,570,423 件
https://w.atwiki.jp/mopsprogramming/pages/110.html
オブジェクトを辞書内にコンパイルしてしまうのではなく、必要になったときにヒープメモリー(プログラムが自由に利用できるメモリ領域)に生成し、必要なくなったときには廃棄する、という使い方をするのが動的オブジェクトです。 他の言語とは違って、Mopsではこのようなオブジェクトの動的生成を、クラスのメソッドとしては実装していません(実装できないことはありませんが)。Mopsでは、そうではなくて、コンテナオブジェクトを利用します。つまり、オブジェクトを格納できる伸縮自在の箱を静的なオブジェクトとして宣言し、その中にオブジェクトを生成する、というわけです。 68kMops以来の標準的なやり方を説明しますが、PowerMopsとiMopsには、Referenceという機構が導入されました。これは、オブジェクトを格納する変数であると同時に、動的オブジェクトを生成する仕組みも備えており、一個のインスタンスを動的に生成する場合には、そちらを用いる方が便利です。 ここでは、オブジェクトを一つだけ格納できるコンテナである"ObjHandle"を用いて、動的オブジェクトの生成の基本を見てみましょう。 まずObjHandleのインスタンスを静的に生成しておきましょう。 ObjHandle MyDynamicObj このコンテナの中に、MyClassクラスのインスタンスを生成するワードを書いてみましょう。 CreateObj ( -- ) [[[']]] MyClass NewObj MyDynamicObj ; \ NewObj ( classXT -- ) ClassXTとはクラスのExecution tokenです。インタープリタモードでは「'」を使います(つまり[]で囲わない)。これで、ヒープ上にMopsオブジェクトが生成され、ハンドルがMyDynamicObjのデータ内に登録されます。つまり、ObjHandleはその指定に応じてどんなクラスのオブジェクトでも格納することができるということです。 ところで、Mops既定クラスのいくつかは"NEW "というメソッドを持っています。他のプログラミング言語では、インスタンスの動的生成を"new"というメソッドでおこなうことが多いので、Mopsクラスの"NEW "メソッドも、そのためのものだと類推するかもしれません。しかし、そうではありません。この事情は少し複雑です。結論から言えば、"NEW "メソッドは、Mopsオブジェクトではなくて、それに対応するシステムオブジェクトを生成するためのメソッドです。例えば、ウィンドウやメニューなどGUIオブジェクトは、OSの側にもオブジェクト(多分CarbonではC++オブジェクト)が生成される必要があります。これなしには、ウィンドウなどを出現させることはできません。このオブジェクトはOSにとって必要なデータを保管しているわけですが、Cabon化に伴って細かい内部構造は隠蔽されるようになりました。つまり、オブジェクトに格納されたデータをプログラムが知りたいときには、そのために準備された関数(インターフェイスメソッドと考えてよいと思います)を通さなければならないこととなりました。ですから、システムオブジェクトそのものをMopsオブジェクトとして生成することはできなくなってしまいました(昔はできた)。システムオブジェクトを生成したときには、そのレファレンス(実態はポインタのようです)を返してもらえるので、オブジェクトに関するデータが必要なときは、それを用いてシステムコール関数経由でデータを取ることになります。ですが、システムコールは、Mops全体として見るとあまり効率の良いものではありません(多分、他の言語のプログラムでも)。そこで、何度も必要になるデータは最初に取っておいてMops自身のオブジェクトデータとして格納しておくわけです。Mopsオブジェクトのデータとシステムオブジェクトのデータとは、おそらくほとんど重複するものだと思います。これは、メモリーの利用効率としては少し無駄がある方法ですが、実行効率(速度)の点ではメリットが大きいと思われます。ちなみに、CやC++でのプログラミングのときにも、このようなオブジェクト(構造体)の作り方をすることはあると思います。 関連項目: 動的オブジェクトにメッセージを送る 動的オブジェクトの廃棄 動的オブジェクトのリスト トップページへ 目次へ
https://w.atwiki.jp/tonyutari/pages/15.html
第2話 オブジェクト?1 オブジェクトを作る。 プロジェクトを作ったら、オブジェクトを作ってみましょう。 まず、「オブジェクト(O)」を選択して、「新規(N)」を選択。 クラス名に「Object1」と入力。 そしたら名前の欄に「$Object1」ってなりましたか? 種類はスプライトです。 ↓ そしたら新しいオブジェクトが生まれました。 オブジェクトを動かす。 そしたら、そのオブジェクトを右に動かしてみましょう。 作成したオブジェクトをダブルクリックしてください。 extends SpriteChar; while(x $screenWidth) { x+=1; update(); } ↑をコピーして張りつけます。 実行したら、右に動いてるはずです。 では左に動かしてみましょう。 extends SpriteChar; while(x $screenWidth) { x+=-1; update(); } ↑をコピーして張りつけます。 実行したら、左に動いてるはずです。 どこが変わったか分かります? 4行目の『x+=-1;』の部分です。 『x+=●;』の●の数が正の数だと、右に動き、 負の数だと、左に動きます。 上下に動かしてみよう。 これで動く原理も分かったかも知れないので、上下にも動かしてみましょう。 結構簡単です。 『x+=-1;』のxの部分をyに変えればいいのです。(いわゆる座標。) 『y+=●;』の●の数が正の数だと、下に動き、 負の数だと、上に動きます。 では次のステップへgo
https://w.atwiki.jp/qqcraft/pages/37.html
ここではQのオブジェクトの性質を記載します。 通常オブジェクト 性質 特になし 赤いオブジェクト 性質 赤いエリアに触れるとクリアになる 黄色いオブジェクト 性質 描いたものが触れると動き出す 風船オブジェクト 性質 飛ぶ
https://w.atwiki.jp/projectdwiki/pages/106.html
オブジェクト毎にACとHPが設定される場合がある。 確実に破壊できるようなオブジェクトであればDMの判断で命中判定・ダメージ判定は無視する。 例) AC HP 細い糸 高い 低い 太い綱 低い 高い オブジェクトに攻撃を仕掛ける前に、DMにオブジェクトの情報を聞くことを推奨します。
https://w.atwiki.jp/daydreammystopia/pages/33.html
概要 オブジェクトとは オブジェクト申請~ノベル登場までのの流れオブジェクト申請 存在確定処理 ノベルへの登場 存在確定されやすさの指標 [部分編集] 概要 フリー版限定機能。 フリー版ではPCの作成ができない代わりに、ミストピア内に生物非生物を問わない何らかの物体(オブジェクト)の生成を試みる権利が与えられる。 ただし採用されるかどうかはGMのさじ加減であり、フリー版公開時点での採用率は1割程度とアナウンスされている。 オブジェクトとは ミストピア内に存在する物体。知性は殆どないが意思はあり、会話はできないが何らかの記憶は所持している。 オブジェクトは発声はできないが思念を発することが可能であり、高精神持ちのPCであれば思念を読み取ることが可能(ただしPCが必ず聞き取ってくれる保証はない)。 自分の意志で動けるオブジェクトの場合、大きさは2m程度が限界。植物、建造物、自然構造物等の動かないオブジェクトであれば、大きさに制限はない。 オブジェクト申請~ノベル登場までのの流れ オブジェクト申請 ゲーム画面トップからオブジェクト申請をクリック。以下の質問に回答し、申請する。 『君は、現生者にとってどんな存在だろう?』・「味方」、「敵」、「どちらでもない」から選択 君はミストピアに存在する"何か"だ。大まかに言って、どんな存在だろう?・「植物」「動物」「道具や部品」「現象」「自然構造物」「建造物」「人造生物(低知性・野生)」から選択 君は一体、どんな姿をしているのだろう?・どんな(形容)、何か(物体の名前)、大きさ(cm、mで表記)の3つを入力 "(オブジェクトの名称)"としてミストピアに在ろうとする者に問う。君は、現生者にどんな出来事をもたらすだろう?・自由入力 そのとき君はどんな様子だった? 何か呟いたりしただろうか?・自由入力 存在確定処理 申請が完了したオブジェクトは、「存在未確定」状態(GM判断待ち)となる。月1程度の頻度で存在確定処理が行われ、存在確定したオブジェクトは「存在観察」一覧(未実装)に載り、他のプレイヤーが閲覧することができるようになる。 存在確定の判断基準は非公開。 ノベルへの登場 存在観察一覧のオブジェクトは、ミッションノベル等に出現する可能性がある。ノベルに掲載されなかった場合も、何らかの形で関われるような仕掛けが実装される予定とのこと。 存在確定されやすさの指標 ■存在確定しやすいオブジェクト ・植物、魚、野生の獣、岩など、現生者の湖畔周辺にありそうなオブジェクト ■却下されそうなもの ・シルヴィが話していた上の世界に反している時代設定の道具(旧文明の頃にありそうなものはOKとなる場合があるが、登場時期は遅れる可能性あり) ・大きな自然構造物や建築物、複雑な人造生物は判定に時間がかかったり、登場が遅れる可能性あり ■NG ・PCの人体の一部、着ている服等のPCと近すぎるもの(後の冒険で手に入りそうな武器、装飾品は許容範囲) ・著作権に触れるような内容、利用規約に反する内容
https://w.atwiki.jp/tonyutari/pages/16.html
第3話 オブジェクト?2 また新規に追加してください。(名前は何でも良い。種類はスプライト) さらに複雑な動きをさせましょう。 extends SpriteChar; while(x $screenWidth) { y+=vy; vy+=0.1; if (y $screenHeight) {y=$screenHeight; vy=-vy;} x+=1; update(); } ↑上をコピーして、オブジェクトに張り付けて実行。 そしたら跳ねていますよね? オブジェクトを増殖 オブジェクトをコピーして張りつけましょう。 コピーしたいオブジェクトを右クリで「コピー(C)」して、 無い場所に「貼り付け(P)」をしましょう。 これでコピー完了です。
https://w.atwiki.jp/hosituba/pages/156.html
概要マグ タワー Sマグ エア・グランデ 概要 プレイヤーの操作するエアリアルとは異なり、NPCとしてマップ上に配置される兵器。(設定上はエアリアル) マグ・タワー・Sマグ・エアグランデが該当する。 マグ以外は破壊するとその戦闘中は再び現れることはない。 オブジェクトの攻撃はチームLvによる攻撃力補正を受けない。 また劣勢補正かフェーズ補正かはわからないが、フェーズが進んだ時ゲージの状態によってオブジェクトの受けるダメージが低下(初期ゲージ300%としたとき、50%差で20%ダメージ軽減)するため、早め早めの対処が後々に響いてくる。 マグ HP 150 フェーズ1から終盤まで無限に湧き出てくる小型兵器。 ポートに向かうタイプと敵コアに向かうタイプに分かれており、どちらも3~4機で1編成を組む。 ARやマグ同士、他のオブジェクトにはビーム弾を放ち攻撃する。低威力ながらこの攻撃でARが撃墜されることもある。 ポートに向かうタイプはポート到達後、自壊して自身の勢力側にゲージを動かす。 敵コアに向かうタイプはコア到達後、特攻しチームゲージにダメージを与える。この攻撃はシャッターを無視し約AR1~2機キル程度のダメージ。 どちらの場合も数が多く、まさに塵も積もれば山となるため無人のポートでも見かけ次第破壊していこう。 このほか諸島のコア前タワー、砂漠のCポートタワーが残っている場合、タワーに向かって特攻する。この攻撃は強く、十機程度のマグで6割ほどHPを減らす。 また、数・耐久力の割りにEXPが多く設定されているため、グレイスピラ等の武器で序盤に殲滅しLVを稼ぐ通称レベリングアサルトという戦法が存在する。一人いれば有利に立ち回れる事が多いが、二人以上は過剰なためブリーフィングで装備や向かうポートを確認しよう。 攻撃力 攻撃 属性 対アーマー 対耐久 ビーム弾 ビーム 7 10 コア攻撃力 150→200→300 タワー HP 2800 フェーズ1から存在する大型兵器。 ポートやコアを守るようにして配置され、マップによって1~3機×両軍が存在する。 ARを対象に確定怯み効果を持つビームを放つ。このビームは誘導しないためダッシュ移動していれば当たることはないが、長い時間判定が残るため避けた直後に切り返すと命中することがある。また威力・ダウン値も高めで怯み効果を持つため、激戦区になりやすいポートに配置されている場合フェーズが切り替わる前に破壊してしまおう。 下記表はフルヒットした場合のものだが、多段ヒット攻撃のためかするように当たると被ダメージが低下する。 攻撃力 攻撃 属性 対アーマー 対耐久 ダウン値 ビーム弾 ビーム 420 300 500 Sマグ HP 4000 フェーズ2に突入すると2~3機出現する中型兵器。 コア前からポート横を通過し最終的に敵コアに特攻する。攻撃対象が一定範囲にいないと進行する。 氷原の奥ポート(A・D)に向かうものとカ・ダ老岩昇華帯 老岩遺跡はコアに向かわず、ポート防衛を行う。 攻撃は3種類あり、単体に誘導ミサイルを4発放つ攻撃と同じミサイルを周囲に10発ほど無誘導でばらまく攻撃、敵機が接近すると自機を中心とした爆発攻撃を行う。爆発攻撃は確定ダウンするが、攻撃直前に攻撃範囲が表示され、アラート表示されるので落ちついて回避しよう。 攻撃力 攻撃 属性 対アーマー 対耐久 ダウン値 ミサイル 実弾 100 100 250 周囲爆破 特殊 188 250 1000 コア攻撃力 500 アップデート履歴 + ... 2020/02/12 ◇コア攻撃力増加 エア・グランデ HP 10000以下 フェーズ3突入時に出現する超大型兵器。 氷原を除き敵ポート近くに現れ、敵コアに進軍する。進行速度はマップや状況によるが約1~2分ほど。 氷原のみ自軍近くのポート(B・E)にとどまり防衛を行う。 HPが減ると主砲の対コア攻撃力が低下するが、その他の攻撃力は低下しない。 主砲の大型レーザー砲の他にオービットからのビームや多段ヒットする爆発攻撃などを用いて進路上のARを積極的に破壊する。 コアに到達後主砲を放ち、シャッター越しにゲージを大きく減らす。 攻撃力 攻撃 属性 対アーマー 対耐久 ダウン値 オービットビーム ビーム 450? 300 500 周囲爆破 特殊 90 60 100 主砲 ビーム 100 60 100 コア攻撃力 2400(耐久25%低下ごとに攻撃力も25%低下) アップデート履歴 + ... 2020/02/12 ◇耐久値と根性値低下
https://w.atwiki.jp/katzmier/pages/10.html
自分自身の削除 オブジェクトが落下中かどうか オブジェクトを吹き飛ばす オブジェクトを指定方向に進ませる プレハブを発生させる(Inspector登録バージョン) プレハブを発生させる(Resources登録バージョン) 自分自身の削除 Destroy(this.gameObject); オブジェクトが落下中かどうか 参考:一方通行のコライダーを設定する、Platform Effector 2D void OnCollisionEnter2D(Collision2D coll){ var velocity = rigidbody.velocity; if(velocity.y = 0 ){ velocity.y = 6;//強制ジャンプ rigidbody.velocity = velocity; } } オブジェクトを吹き飛ばす var SkeletonRD GameObject; var SKRD GameObject; SKRD = Instantiate(SkeletonRD, Vector3(0,0,0), Quaternion.identity); SkeletonRD = GameObject.Find( SKELETONRD(Clone) ).gameObject; SkeletonRD.GetComponent(Rigidbody).AddForce(Vector3(0.0f, 100.0f, 0.0f), ForceMode.Impulse); オブジェクトを指定方向に進ませる 例:プレイヤーを向きながら飛んでくるミサイルvar Player GameObject;Player = GameObject.Find( Dimples ).gameObject; var v3 Vector3 = (Player.transform.position - this.transform.position);this.transform.rotation = Quaternion.Slerp(this.transform.rotation, Quaternion.LookRotation(Player.transform.position - this.transform.position), 0.1f);this.GetComponent(Rigidbody).AddForce(v3 * 0.1f * Time.deltaTime, ForceMode.Force); プレハブを発生させる(Inspector登録バージョン) var BoomPrefab GameObject; Inspectorでプレハブを登録しといてから Instantiate(BoomPrefab,Vector3(0,0,5.0f),Quaternion.identity); プレハブを発生させる(Resources登録バージョン) Projectビューに「Resources」フォルダを作成 「Resources」フォルダ配下にPrefabを置く Instantiate(Resources.Load( Detonator-Base ),Vector3(0,0,5.0f),Quaternion.identity); 参考http //hamken100.blogspot.jp/2012/04/unity-resourcesprefab.html 利点 リソースデータの呼び出しが簡潔になる。 動的に呼び出すデータを変更する仕組みが作りやすい。 欠点 スクリプトの再利用性がなくなる場合がある。 使わなくなったデータがキャッシュに残るので適当にUnloadしてやる必要がある。 Resources.UnloadUnusedAssets();
https://w.atwiki.jp/nopu/pages/214.html
関数オブジェクトは、STLのアルゴリズムと組み合わせて使う。 作り方 class FuncObj{ public void operator()( Hoge obj ); }; void FuncObj operator()( Hoge obj ){ cout obj.to_s() endl; } 使い方 Hoge hoge; FuncObj( hoge ); 応用 for_eachでコンテナの各要素に関数オブジェクトを作用させる #include algorithm std for_each( vec.begin(), vec.end(), FuncObj() ); 関数オブジェクトを引数にとる関数
https://w.atwiki.jp/huzitukasystem/pages/22.html
エリア、セット、ステージに配置された。 基本的に持ち運べないサイズ、構造、用途のデータを持つ設置物。 効果は一律、もしくは具体的な効果はない。 判定が伴う効果のあるものはギミックに分類される。 一覧はあくまで例であり、GM、PLは必要であれば一覧にない物品を自由にオブジェクトとして登場させることができる。 GMが登場させる場合、ステータス及び効果は任意に決定できる。 PLの場合は、幸運判定相当の達成値がそのステータスになる。 ■オブジェクトステータス ●名前:自由に決められる。 ●用途:オブジェクトの効果と発動条件。 常駐:常に効果を発揮。 操作:同じエリアに移動してサポートアクションを消費する。 自動:発動条件を満たすと自動で効果を発揮する。 ●構造値:オブジェクトの強度、体力。改造、修理の目標値。 *表記例:[火気厳禁ドラム缶:〈赤い容器〉:20] ■設置物:どこにでも置ける、設置できる物。 〈容器〉:常駐:壺やドラム缶など、主に液状のアイテムが入れられる物。 〈赤い容器〉:常駐:ダメージを受けると非常に爆発しそうな容器。 〈金庫〉:常駐:開けるのに鍵に類するアイテムか、判定が必要な箱。 〈椅子〉:常駐:座る、また体の半分ほどの足場になる。半遮蔽を取ることも可能。 〈ソファ〉:常駐:座る、立てることができれば背丈ほどの足場に、完全遮蔽を取ることもできる。 〈机〉:常駐:テーブルを含む。引き出し等の収納がある場合がある。体の半分ほどの足場に、また完全遮蔽を取ることもできる。 〈スイッチ〉:操作:形状は様々。他のオブジェクトやギミックと連動してることが多い。 〈インテリアランプ〉:操作:灯り。基本的に持ち運ぶことを想定してない。 〈小像〉:常駐:片手で運べるほどの小さな像等。 〈大像〉:常駐:人間大以上のサイズの像。遮蔽として使用できる。 〈PC〉:操作:デスクトップパソコン等。情報の取得や、他の装置の操作など。 〈暖房器具〉:操作:ストーブやヒーター等の設置型暖房器具。燃料や電気などの消費アイテムが別途で必要になる場合もある。 〈寝具〉:常駐:ベッドまたは布団など。回復判定の効果を高める場合もある。 〈バスタブ〉:操作:浴室、水、お湯を貯めることができる。完全遮蔽も取れる。 〈観葉植物〉:常駐:植木鉢などに植えられている花もしくは木。 〈木〉:常駐:基本的に人一人が隠れられるくらいの幹。枝には花や実があるかもしれない。 〈茂み〉:常駐:背の低い木や背の高い草。何かが隠れているかもしれない。半遮蔽としても使える。 〈岩〉:常駐:基本的に腰以上の高さのあるもの。半遮蔽としても使える。 〈ブロック〉:常駐:進入禁止の車止めなど。ヴィークルはこれを超えて移動できない。 〈電柱〉:常駐:鉄筋コンクリート製の柱。登ったりもできる。大抵は街灯が付いている。 〈街灯〉:常駐:主に金属製の灯り。 〈歩道橋〉:常駐:金属製の道路を跨ぐ橋。橋の上は、地上からは距離が一つ離れている扱いになる。 〈標識〉:常駐:道路標識、看板。 〈シンク〉:操作:手洗い場などの水回り。 ■天井:主に天井に備え付けられる物。 〈シーリングファン〉:操作:送風用の回転するファン。回転することを何かに利用できるかもしれない。 〈照明〉:操作:部屋を明るくできる。電気が流れていることも何かに使えるかも知れない。近くにスイッチがあることが多い。 〈シャンデリア〉:操作:大量のクリスタルなどで装飾された照明。蝋燭などを使ってた時代の物なら、交換のために昇降できるようになっている。 〈跳ね上げ式階段〉:操作:主に天井裏への階段。 〈エアコン〉:操作:冷暖房。大抵はリモコンで操作する。 〈エアダクト〉:常駐:通気口、空気以外にもガスが通ったりする。通り道になるかもしれない。 〈鍾乳石〉:常駐:主に洞窟や地下など。滑らかに尖っている。 〈氷柱〉:常駐:軒先や冷凍室など、鋭く尖っている。 ■壁:主に壁に備え付けられる物。 〈扉〉:操作:形状は様々、開け閉めする。大抵は鍵もついている。 エリアとエリアの間にある場合は、このオブジェクトを通してでしか移動できず、閉じたままなら移動不可になる。 〈自動ドア〉:自動:扉は同じエリアに入れば自動で開く。それ以外の効果は扉と同じ。 〈シャッター〉:操作:効果としては自動ドアに近いが、用途が違うので別枠扱い。防火シャッターなどのただの扉よりも頑丈。 〈換気扇〉:操作:空気を入れ替える。煙やガスの効果を下げる事ができる。 〈窓〉:操作:形状は様々。開け閉めできる、非常時は出入り口にもなる。 〈カーテン〉:操作:ブラインド含む。開け閉め出来る。日差しや視界を遮れる。たまに何隠れてる。 〈棚〉:常駐:本棚や食器棚、ロッカーやクローゼット。様々なものを収納する。 ■地面(床):特殊な床や地面など。 〈木板〉:常駐:火がつく、古びたものなら歩くときしむ。腐っていると底が抜けることがある。 〈暖房器具〉:操作:ホットカーペット、床下暖房など。故障している場合は、発火したり漏電したりする。 〈カーペット〉:常駐:もしくは絨毯。それ自体に何らかの効果があることはないが、何かが下に隠れてることがある。 〈床下収納〉:操作:もしくは地下室への入り口。 〈移動床〉:自動:自動で移動してしまう。戦闘エリアであれば毎カット移動方向へエリアを一つ移動してしまう。 〈穴〉:常駐:深さはまちまち。浅ければ中に入ることで遮蔽を取ることもできる。